package com.uidp.hibernatelayer;

// Generated 2013-9-3 16:39:27 by Hibernate Tools 3.4.0.CR1

import java.util.ArrayList;
import java.util.List;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;

import com.acsior.dac.impl.hibernate.vo.HibernateVO;

/**
 * ModulElements generated by hbm2java
 */
@Entity
@Table(name = "modul_elements", catalog = "uidpdb")
public class ModulElementsVO extends HibernateVO {

	// Fields

	/**
	 * 
	 */
	private static final long serialVersionUID = 7692553493292030975L;
	private Integer id;
	private String elementname;
	private Integer ordering;
	private List<GroupsVO> groupses ;
	private List<AttributesVO> attributeses;
	private List<ModulModulElementsVO> modulModulElementses ;
			

	// Constructors

	/** default constructor */
	public ModulElementsVO() {
		this.groupses = new ArrayList<GroupsVO>();
		this.attributeses = new ArrayList<AttributesVO>();
		this.modulModulElementses = new ArrayList<ModulModulElementsVO>();
	}

	/** minimal constructor */
	public ModulElementsVO(String elementname, Integer ordering) {
		this.elementname = elementname;
		this.ordering = ordering;
	}

	/** full constructor */
	public ModulElementsVO(String elementname, Integer ordering,
			List<GroupsVO> groupses, List<AttributesVO> attributeses,
			List<ModulModulElementsVO> modulModulElementses) {
		this.elementname = elementname;
		this.ordering = ordering;
		this.groupses = groupses;
		this.attributeses = attributeses;
		this.modulModulElementses = modulModulElementses;
	}

	// Property accessors
	@Id
	@GeneratedValue(strategy = IDENTITY)
	@Column(name = "id", unique = true, nullable = false)
	public Integer getId() {
		return this.id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	@Column(name = "elementname", nullable = false, length = 30)
	public String getElementname() {
		return this.elementname;
	}

	public void setElementname(String elementname) {
		this.elementname = elementname;
	}

	@Column(name = "ordering", nullable = false)
	public Integer getOrdering() {
		return this.ordering;
	}

	public void setOrdering(Integer ordering) {
		this.ordering = ordering;
	}

	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "modulElements")
	public List<GroupsVO> getGroupses() {
		return this.groupses;
	}

	public void setGroupses(List<GroupsVO> groupses) {
		this.groupses = groupses;
	}

	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "modulElements")
	public List<AttributesVO> getAttributeses() {
		return this.attributeses;
	}

	public void setAttributeses(List<AttributesVO> attributeses) {
		this.attributeses = attributeses;
	}

	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "modulElements")
	public List<ModulModulElementsVO> getModulModulElementses() {
		return this.modulModulElementses;
	}

	public void setModulModulElementses(
			List<ModulModulElementsVO> modulModulElementses) {
		this.modulModulElementses = modulModulElementses;
	}

	@Override
	public void setId(Object id) {
		// TODO Auto-generated method stub

	}

}
